home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2005 November / SAN CD 11-2005 CD-ROM 6.iso / pc / media / BBCSAN.swf / scripts / frame_1 / DoAction.as
Encoding:
Text File  |  2005-09-13  |  3.2 KB  |  123 lines

  1. fscommand(allowscale,false);
  2. fscommand(showmenu,false);
  3. fscommand(fullscreen,false);
  4. var iC = 0;
  5. var bS = 0;
  6. var i_ID = 0;
  7. var i_SID = 0;
  8. var i_ANGLE = 0;
  9. var s_NAME = "";
  10. var i_FRICT = 0.15;
  11. var i_START = 5;
  12. var oPOINT = new Object();
  13. var oSTAR = new Object();
  14. var a_STARDATA = new Array();
  15. var o_CHILDNODE = new Object();
  16. var oXML = new XML();
  17. oXML.ignoreWhite = true;
  18. oXML.onLoad = function(bOK)
  19. {
  20.    var _loc1_ = this;
  21.    if(bOK)
  22.    {
  23.       for(i in _loc1_.firstChild.childNodes)
  24.       {
  25.          a_STARDATA[i] = new Array();
  26.          o_CHILDNODE = _loc1_.firstChild.childNodes[i];
  27.          a_STARDATA[i][0] = o_CHILDNODE.childNodes[0].firstChild.nodeValue;
  28.          a_STARDATA[i][1] = o_CHILDNODE.childNodes[1].firstChild.nodeValue;
  29.          for(j in o_CHILDNODE.childNodes[2].childNodes)
  30.          {
  31.             a_STARDATA[i][2] = parseSTR(o_CHILDNODE.childNodes[2].childNodes[j].firstChild.nodeValue) add "\n" add a_STARDATA[i][2];
  32.          }
  33.       }
  34.    }
  35. };
  36. parseSTR = function(sSTR)
  37. {
  38.    var _loc2_ = sSTR;
  39.    var _loc1_ = new Array();
  40.    _loc1_ = _loc2_.split(",");
  41.    _loc1_[0] += " ";
  42.    if(_loc1_[1].length > 0)
  43.    {
  44.       _loc1_[1] = "RA " + _loc1_[1] + " ";
  45.    }
  46.    if(_loc1_[2].length > 0)
  47.    {
  48.       _loc1_[2] = "dec." + _loc1_[2] + " ";
  49.    }
  50.    if(_loc1_[3].length > 0)
  51.    {
  52.       _loc1_[3] = "mag." + _loc1_[3] + " ";
  53.    }
  54.    _loc2_ = _loc1_[0] + _loc1_[1] + _loc1_[2] + _loc1_[3];
  55.    return _loc2_;
  56. };
  57. oXML.load("RES/SkyWatch/data.xml");
  58. getStarData = function(i_ID)
  59. {
  60.    var _loc1_ = i_ID;
  61.    STARNAME = a_STARDATA[_loc1_ - 1][0];
  62.    CONSTNAME = a_STARDATA[_loc1_ - 1][1];
  63.    COORDS = a_STARDATA[_loc1_ - 1][2];
  64.    MCIMG._visible = 0;
  65. };
  66. showSpeaker = function(b_SPKID)
  67. {
  68.    PATMAN.isForw = b_SPKID;
  69.    CHRISMAN.isForw = !b_SPKID;
  70. };
  71. showStar = function(i_SID)
  72. {
  73.    if(i_SID == -1)
  74.    {
  75.       i_ID = !(iC < a_STARDATA.length && iC > 0) ? (iC = 1) : (iC += 1);
  76.    }
  77.    else
  78.    {
  79.       i_ID = i_SID;
  80.       i_SID -= 1;
  81.       iC += i_SID - iC;
  82.       MCQUE.gotoAndPlay("Q" + i_ID);
  83.    }
  84.    oSTAR = eval("MCGLOBE.S" + i_ID);
  85.    oPOINT.w = oSTAR._width;
  86.    getStarData(i_ID);
  87.    i_START = 90;
  88.    PP = "Pause";
  89.    bS = 0;
  90. };
  91. repStar = function(i_SID)
  92. {
  93.    oSTAR = eval("MCGLOBE.S" + i_SID);
  94.    oPOINT.w = oSTAR._width;
  95.    getStarData(i_SID);
  96. };
  97. this.onEnterFrame = function()
  98. {
  99.    oPOINT.x = oSTAR._x;
  100.    oPOINT.y = oSTAR._y;
  101.    MCGLOBE.localToGlobal(oPOINT);
  102.    i_ANGLE = Math.atan2(Math.round(MCGLOBE._y - oPOINT.y),Math.round(MCGLOBE._x - oPOINT.x)) / 0.017453292519943295 + i_START;
  103.    i_ANGLE = !isNaN(i_ANGLE) ? i_ANGLE : i_START;
  104.    MCGLOBE._rotation += (- i_ANGLE) * i_FRICT;
  105.    MCTARG._y -= (MCTARG._y - oPOINT.y) * i_FRICT / 1.2;
  106.    MCTARG._height = MCTARG._width += (oPOINT.w - MCTARG._width) * i_FRICT;
  107.    var _loc3_ = MCTARG._x;
  108.    var _loc2_ = MCTARG._y;
  109.    var _loc1_ = MCTARG._height / 2;
  110.    MCTL._x = _loc3_ - _loc1_ - 10;
  111.    MCTR._x = _loc3_ + _loc1_ + 10;
  112.    MCTT._y = _loc2_ - _loc1_ - 10;
  113.    MCTB._y = _loc2_ + _loc1_ + 10;
  114.    MCTL._y = MCTR._y = _loc2_;
  115.    updateAfterEvent();
  116. };
  117. MovieClip.prototype.playDir = function()
  118. {
  119.    var _loc1_ = this;
  120.    bDir = !_loc1_.isForw ? -1 : 1;
  121.    _loc1_.gotoAndStop(_loc1_._currentframe + bDir);
  122. };
  123.